In many network architectures, information learned via DHCP (Dynamic Host Configuration Protocol) needs to be synchronized between a network service provider's router and the customer premise device. This synchronized information can be used, for example, to create a filter on the service provider's router which prevents one customer from spoofing their source IP address and hiding an attack on another customer.
When a router fails, but the customer premise device does not, a condition can exist where the router loses its record of this information. The customer device, however, because it has not failed, believes this information is still valid. When the router recovers, the customer device will be unable to send any traffic since the router's filter will have lost state and, for example, defaulted back to a secure mode in which all traffic from the customer device is denied because the service router is not aware that the IP address the device is using is valid.
It is known to write DHCP information to persistent storage (e.g. the router's flash drive or other persistent storage) so that subscriber state (e.g., DHCP lease) information can be retrieved from the persistent storage in the event of a power or other failure at the router that results in the in memory store of subscriber state being lost. However, if the persistent storage (e.g., a flash drive, hard disk drive, or other persistent storage) is not fast enough, information can queue up. Such a condition could occur, for example, if the number of subscribers trying to establish and/or reestablish connections and/or the characteristics (e.g., write speed) of the persistent storage were such that subscriber information cannot be written to the persistent storage as fast as it is being added to the queue. If there is a failure while information is queued but not written to the persistent storage, the router can lose that information. Since the information has already been passed to the client, the client thinks that the information is valid, even though the router has no way to know the information is valid because it had not yet been written to the persistent storage used to recover from failures.
Therefore, there is a need for a better way to persist DHCP and/or other subscriber state information to avoid and/or mitigate the effect of any loss of subscriber state information in the event of a failure at the provider's router.